package com.ssy.lingxi.member.merchant.model.vo.validate.request;

import com.ssy.lingxi.member.merchant.handler.annotation.MemberValidateAgreeAnnotation;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Positive;
import javax.validation.constraints.Size;
import java.io.Serializable;

/**
 * 提交会员审核请求接口参数VO
 * @author 万宁
 * @version 2.0.0
 * @date 2020-07-29
 */
public class MemberValidateCommitVO implements Serializable {
    private static final long serialVersionUID = 7276465545351685748L;

    /**
     * 会员Id
     */
    @NotNull(message = "会员id要大于0")
    @Positive(message = "会员id要大于0")
    private Long memberId;

    /**
     * 审核内容Id
     */
    @NotNull(message = "审核内容Id要大于0")
    @Positive(message = "审核内容Id要大于0")
    private Long validateId;

    /**
     * 提交审批的状态：0-不同意；1-同意
     */
    @NotNull(message = "审批状态不能为空：0-不通过 1-通过")
    @MemberValidateAgreeAnnotation
    private Integer agree;

    /**
     * 审核原因
     */
    @Size(max = 120, message = "不通过原因最大120个字符")
    private String reason;

    public Long getMemberId() {
        return memberId;
    }

    public void setMemberId(Long memberId) {
        this.memberId = memberId;
    }

    public Long getValidateId() {
        return validateId;
    }

    public void setValidateId(Long validateId) {
        this.validateId = validateId;
    }

    public Integer getAgree() {
        return agree;
    }

    public void setAgree(Integer agree) {
        this.agree = agree;
    }

    public String getReason() {
        return reason;
    }

    public void setReason(String reason) {
        this.reason = reason;
    }
}
